﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web; 
using System.Data;


/// <summary>
/// Summary description for SessionInfo
/// </summary>
public class SessionInfo
{
    private SessionInfo()
    {
    }
    /// <summary>
    /// Return session info data 
    /// </summary>
    public static SessionInfo prop_getObj
    {
        get
        {
            SessionInfo session = (SessionInfo)HttpContext.Current.Session["SessionInfo"];

            if (session == null)
            {
                session = new SessionInfo();
                HttpContext.Current.Session["SessionInfo"] = session;
            }

            return session;
        }
    }

    private int _EmployeeID;

    public int EmployeeID
    {
        get { return _EmployeeID; }
        set { _EmployeeID = value; }
    }

    private string _EmpEmail;

    public string EmpEmail
    {
        get { return _EmpEmail; }
        set { _EmpEmail = value; }
    }

    private string _EmployeeFullName;

    public string EmployeeFullName
    {
        get { return _EmployeeFullName; }
        set { _EmployeeFullName = value; }
    }

    private bool _IsEmployeeAdmin;

    public bool IsEmployeeAdmin
    {
        get { return _IsEmployeeAdmin; }
        set { _IsEmployeeAdmin = value; }
    }

    private List<PLMstFormMasters> _Menu;

    public List<PLMstFormMasters> Menu
    {
        get { return _Menu; }
        set { _Menu = value; }
    }

    private PLMstUser _UserMasterSearchCriteria;

    public PLMstUser UserMasterSearchCriteria
    {
        get { return _UserMasterSearchCriteria; }
        set { _UserMasterSearchCriteria = value; }
    }

    private PLCompany _CompanyMasterSearchCriteria;

    public PLCompany CompanyMasterSearchCriteria
    {
        get { return _CompanyMasterSearchCriteria; }
        set { _CompanyMasterSearchCriteria = value; }
    }

    private PLClient _ClientMasterSearchCriteria;

    public PLClient ClientMasterSearchCriteria
    {
        get { return _ClientMasterSearchCriteria; }
        set { _ClientMasterSearchCriteria = value; }
    }

    private PLContract _ContractMasterSearchCriteria;

    public PLContract ContractMasterSearchCriteria
    {
        get { return _ContractMasterSearchCriteria; }
        set { _ContractMasterSearchCriteria = value; }
    }

    private PLPaymentMode _PaymentModeMasterSearchCriteria;

    public PLPaymentMode PaymentModeMasterSearchCriteria
    {
        get { return _PaymentModeMasterSearchCriteria; }
        set { _PaymentModeMasterSearchCriteria = value; }
    }
    private PLPaymentLevel _PaymentLevelMasterSearchCriteria;

    public PLPaymentLevel PaymentLevelMasterSearchCriteria
    {
        get { return _PaymentLevelMasterSearchCriteria; }
        set { _PaymentLevelMasterSearchCriteria = value; }
    }

    private PLInvoice _InvoiceEntrySearchCriteria;

    public PLInvoice InvoiceEntrySearchCriteria
    {
        get { return _InvoiceEntrySearchCriteria; }
        set { _InvoiceEntrySearchCriteria = value; }
    }

    private PLCollection _CollectionEntrySearchCriteria;

    public PLCollection CollectionEntrySearchCriteria
    {
        get { return _CollectionEntrySearchCriteria; }
        set { _CollectionEntrySearchCriteria = value; }
    }

    private PLProposedInvoiceReportSearchCriteria _PropsedInvRptSearch;

    public PLProposedInvoiceReportSearchCriteria PropsedInvRptSearch
    {
        get { return _PropsedInvRptSearch; }
        set { _PropsedInvRptSearch = value; }
    }

    private PLFinanceYear _FinYearSearchCriteria;

    public PLFinanceYear FinYearSearchCriteria
    {
        get { return _FinYearSearchCriteria; }
        set { _FinYearSearchCriteria = value; }
    }

    private PLContract _ContractTransactionSearchCriteria;

    public PLContract ContractTransactionSearchCriteria
    {
        get { return _ContractTransactionSearchCriteria; }
        set { _ContractTransactionSearchCriteria = value; }
    }

    private PLContract _ContractReportSearchCriteria;

    public PLContract ContractReportSearchCriteria
    {
        get { return _ContractReportSearchCriteria; }
        set { _ContractReportSearchCriteria = value; }
    }

    private PLInvoice _InvoiceReportSearchCriteria;

    public PLInvoice InvoiceReportSearchCriteria
    {
        get { return _InvoiceReportSearchCriteria; }
        set { _InvoiceReportSearchCriteria = value; }
    }

    private PLCollection _CollectionReportSearchCriteria;

    public PLCollection CollectionReportSearchCriteria
    {
        get { return _CollectionReportSearchCriteria; }
        set { _CollectionReportSearchCriteria = value; }
    }

    private PLInvoice _ReceivableReportSearchCriteria;

    public PLInvoice ReceivableReportSearchCriteria
    {
        get { return _ReceivableReportSearchCriteria; }
        set { _ReceivableReportSearchCriteria = value; }
    }

    private string _CloseFinancialYearOption;

    public string CloseFinancialYearOption
    {
        get { return _CloseFinancialYearOption; }
        set { _CloseFinancialYearOption = value; }
    }
    

    //private PLInvoice _FinYearInvoiceSearch;

    //public PLInvoice FinYearInvoiceSearch
    //{
    //    get { return _FinYearInvoiceSearch; }
    //    set { _FinYearInvoiceSearch = value; }
    //}

    //private PLCollection _FinYearContractSearch;

    //public PLCollection FinYearContractSearch
    //{
    //    get { return _FinYearContractSearch; }
    //    set { _FinYearContractSearch = value; }
    //}

    //private PLCollection _FinYearCollectionSearch;

    //public PLCollection FinYearCollectionSearch
    //{
    //    get { return _FinYearCollectionSearch; }
    //    set { _FinYearCollectionSearch = value; }
    //}


}